package icu.zlz.emqx.service;

import java.util.List;
import java.util.Map;

import icu.zlz.emqx.domain.IotGroup;
import icu.zlz.emqx.domain.IotTopic;

/**
 * 主题Service接口
 * 
 * @author zangs
 * @since 2024-12-31
 */
public interface IIotTopicService 
{
    /**
     * 查询主题
     * 
     * @param topicId 主题主键
     * @return 主题
     */
    public IotTopic selectIotTopicByTopicId(Long topicId);

    /**
     * 查询主题列表
     * 
     * @param iotTopic 主题
     * @return 主题集合
     */
    public List<IotTopic> selectIotTopicList(IotTopic iotTopic);

    /**
     * 新增主题
     * 
     * @param iotTopic 主题
     * @return 结果
     */
    public int insertIotTopic(IotTopic iotTopic);

    /**
     * 修改主题
     * 
     * @param iotTopic 主题
     * @return 结果
     */
    public int updateIotTopic(IotTopic iotTopic);

    /**
     * 批量删除主题
     * 
     * @param topicIds 需要删除的主题主键集合
     * @return 结果
     */
    public int deleteIotTopicByTopicIds(Long[] topicIds);

    /**
     * 删除主题信息
     * 
     * @param topicId 主题主键
     * @return 结果
     */
    public int deleteIotTopicByTopicId(Long topicId);

    public  List<Map<String, Object>> selectIotGroupList( String name);
}
